package com.cn.demo1;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

/**
 * classLoader中的两个方法
 * 1. public static ClassLoader getSystemClassLoader() 获取系统类加载器
 * 2. public InputStream getResourceAsStream(String name) 加载某一个资源文件
 */
public class ClassLoaderDemo2 {
    public static void main(String[] args) throws IOException {
        //获取系统类加载器
        ClassLoader systemClassLoader = ClassLoader.getSystemClassLoader();

        //利用加载器去加载一个指定的文件
        //参数：文件的路径（放在src的根目录下，默认去那里加载）
        //返回值：字节流。
        InputStream inputStream = systemClassLoader.getResourceAsStream("prop.properties");
        Properties prop = new Properties();
        prop.load(inputStream);
        System.out.println(prop);

        Properties properties = new Properties();
        properties.load(inputStream);
        //代码中 Properties properties 第二次加载 inputStream 时，inputStream 已经被读取完毕，流的指针已经到达末尾，无法再次读取数据。因此，properties 是空的。
        System.out.println(properties);
        if(inputStream != null){
            inputStream.close();
        }
    }
}
